package services.Gae
{
	import mx.collections.ArrayCollection;
	
	import services.GenericService;
	
	import transferObjects.Administrador.ProyectoTO;
	import transferObjects.Gae.CursoTO;
	import transferObjects.Gae.GaeTO;
	import transferObjects.UsuarioTO;

	public class ServiceGae extends GenericService
	{
		public function ServiceGae()
		{
			super();
			this.destination="ServiceGae";
            this.source="facade.Gae.FacadeGae";
		}
		
		public function crearGae(gae:GaeTO, usuario:UsuarioTO):int
        {
        	this.getOperation("crearGae").send(gae, usuario);
            return -1;
        }
        public function modificarGae(gaeOriginal:GaeTO, usuarioOrignal:UsuarioTO, gaeNuevo:GaeTO, usuarioNuevo:UsuarioTO):int
        {
        	this.getOperation("modificarGae").send(gaeOriginal, usuarioOrignal, gaeNuevo, usuarioNuevo);
            return -1;
        }
        public function eliminarGae(gae:GaeTO):int
        {
        	this.getOperation("eliminarGae").send(gae);
            return -1;
        }
        public function modificarPerfilGae(gae:GaeTO, usuario:UsuarioTO):int
        {
        	this.getOperation("modificarPerfilGae").send(gae, usuario);
            return -1;
        }
        
        public function asignarProyectoGae(proyecto:ProyectoTO, gae:GaeTO):int
		{
			this.getOperation("asignarProyectoGae").send(proyecto, gae);
			return -1;
		}
        
        public function desAsignarProyectoGae(proyecto:ProyectoTO, gae:GaeTO):int
        {
        	this.getOperation("desAsignarProyectoGae").send(proyecto, gae);
			return -1;
        }
        
        public function obtenerGaesCurso(curso:CursoTO):ArrayCollection
        {
        	this.getOperation("obtenerGaesCurso").send(curso);
        	return null;
        }
        
        public function obtenerGaesCursoAsociados(curso:CursoTO):ArrayCollection
        {
        	this.getOperation("obtenerGaesCursoAsociados").send(curso);
        	return null;
        }
        
        public function obtenerGaesCursoNoAsociados(curso:CursoTO):ArrayCollection
        {
        	this.getOperation("obtenerGaesCursoNoAsociados").send(curso);
        	return null;
        }
        
        public function obtenerAlumnosGae(gae:GaeTO):ArrayCollection
        {
        	this.getOperation("obtenerAlumnosGae").send(gae);
        	return null;
        }
        
        public function obtener_gaes_asociados_a_un_proyecto_X(proyecto:ProyectoTO):ArrayCollection
        {
        	this.getOperation("obtener_gaes_asociados_a_un_proyecto_X").send(proyecto);
        	return null;
        }
	}
}